package itheima.com.Collection;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class RandomSetTest {
    public static void main(String[] args) {
        //生成10个1至100之间的随机整数(不能重复)，存入一个List集合(可以先不使用泛型，泛型明天讲)
//        编写方法对List集合进行排序,禁用Collections.sort方法和TreeSet
//        然后利用迭代器遍历集合元素并输出
//        如：15 18 20 40 46 60 65 70 75 91
        List list = new ArrayList();
        Random r = new Random();

//         不确定循环次数，且集合长度现在为0，所以不能用集合遍历求每一个元素
//        for (int i = 0; i < list.size(); i++) {
        while (list.size() != 10) {
            int num = r.nextInt(100) + 1;
            //进行判断去除重复元素
            if(!list.contains(num)){
                list.add(num);
            }
        }
        System.out.println(list);
        sortList(list);
        System.out.println(list);
    }

    private static void sortList(List list) {
        //可以使用冒泡排序
        for (int i = 0; i < list.size()-1; i++) {
            for (int j = 0; j < list.size()-1-i; j++) {
                //集合中的是引用数据类型，所以需要强转为Integer的包装类进行比较
                Integer x =(Integer) list.get(j);
                Integer y =(Integer) list.get(j + 1);
                if(x > y){
//                    集合赋值需要通过list.set方法
//                    list.get(j)=list.get(j+1);  arr[j]=arr[j+1];
                    list.set(j,y);
                    list.set(j+1,x);
                }
            }

        }
    }
}
